package lib.bone.access.module.dict.dto;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lib.bone.access.validator.IsSubjectType;
import lombok.Data;

import javax.validation.constraints.*;

/**
 * @Author : cg
 */

@Data
@ApiModel(value = "横向课题词典新增DTO")
public class NepuSubjectDictAddDTO {
    @NotBlank(message = "分类编码不可为空")
    @ApiModelProperty("分类编码")
    String code;

    @IsSubjectType
    @ApiModelProperty(value = "横向课题类型",notes = "自然科学，社会科学")
    String subjectType;

    /**
     * 横向课题级别
     */
    @NotBlank(message = "横向课题级别不可为空")
    @ApiModelProperty(value = "横向课题级别",notes = "A1,A2,B1等")
    String subjectLevel;

    @DecimalMin(value = "0",message = "经费上限不小于0")
    @ApiModelProperty("经费上限")
    Double fundsCeiling;

    @DecimalMin(value = "0",message = "经费下限不小于0")
    @ApiModelProperty("经费下限")
    Double fundsFloor;

    /**
     * 横向课题年工作量
     */
    @DecimalMin(value = "0",message = "最小工作量大于0")
    @ApiModelProperty(value = "工作量Min",notes = "获奖对应的最小工作量")
    Double workloadMin;
    @DecimalMin(value = "0",message = "最大工作量大于0")
    @ApiModelProperty(value = "工作量Max",notes = "获奖对应的最大工作量")
    Double workloadMax;

    @ApiModelProperty(value = "横向课题词典备注")
    String remark;
}
